package org.sundatagroup.aurora.monitor.service;

import org.sundatagroup.aurora.core.service.message.IMessageReciever;

/**
 * <p>用于同步从展示区发来的展示屏状态更新的接口.
 * <p>实现该接口的类将实时获取展示屏状态的更新数据
 * </p>
 * 
 * @author CharlesChen
 * @date 2018-05-18
 * @since 0.2.0
 */
public interface IStatusUpdateAware extends IMessageReciever {
	
	/**
	 * <b>状态更新</b>
	 * <p>每次展示屏的状态更新都将通过这个接口发送到监控区.
	 * </p>
	 * @param sid
     *   屏幕号
	 */
    void statusUpdate(String sid);
    
    /**
     * 当某个展示屏与展示区建立连接时触发
	 * @param sid
     *   屏幕号
     */
    default void onScreenCreate(String sid) {}
    
    /**
     * 当某个展示屏与展示区断开连接时触发
     * @param sid
     *   屏幕号
     */
    default void onScreenDestroy(String sid) {}
    
}
